const Service = require('egg').Service
class HomeService extends Service {
    async updateUser(userInfoFromWe) {
        const { ctx, app } = this
        console.log('---userInfoFromWe----', userInfoFromWe);

        try {
            const userInfo = await app.mysql.get('user', { openid: userInfoFromWe.openid });

            if (userInfo) {
                // 如果之前用户已经来过
                const token = app.jwt.sign({
                    id: userInfo.id,
                    openid: userInfo.openid,
                    exp: Math.floor(Date.now() / 1000) + (24 * 60 * 60) // token 有效期为 24 小时
                }, app.config.jwt.secret);

                return token;
            } else {
                // 没有就把oppenid存数据库 生成签名
                const result = await app.mysql.insert('user', userInfoFromWe);
                const token = app.jwt.sign({
                    id: result.insertId,
                    openid: userInfoFromWe.openid,
                    exp: Math.floor(Date.now() / 1000) + (24 * 60 * 60) // token 有效期为 24 小时
                }, app.config.jwt.secret);

                return token
            }
            
        } catch (err) {
            console.log(err);
            return null
        }
    }

    async login() {
        const { ctx, app } = this
        // const sql = 
    }
}
module.exports = HomeService

